package com.ruoyi.web.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 个股逐笔成交明细对象 gu_mr_trade_detail
 * 
 * @author ruoyi
 * @date 2025-10-24
 */
public class GuMrTradeDetail extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /**   */
    private String id;

    /** 股票代码（或公司内码） */
    @Excel(name = "股票代码", readConverterExp = "或=公司内码")
    private String code;

    /** 数据归属日期 yyyy-MM-dd */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "数据归属日期 yyyy-MM-dd", width = 30, dateFormat = "yyyy-MM-dd")
    private Date d;

    /** 成交时间 HH:mm:ss */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "成交时间 HH:mm:ss", width = 30, dateFormat = "yyyy-MM-dd")
    private String t;

    /** 成交量（股） */
    @Excel(name = "成交量", readConverterExp = "股=")
    private Long v;

    /** 成交价（元） */
    @Excel(name = "成交价", readConverterExp = "元=")
    private BigDecimal p;

    /** 交易方向：0-中性盘 1-买入 2-卖出 */
    @Excel(name = "交易方向：0-中性盘 1-买入 2-卖出")
    private Integer ts;

    /** 入库时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "入库时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createdAt;

    public void setId(String id) 
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }

    public void setCode(String code) 
    {
        this.code = code;
    }

    public String getCode() 
    {
        return code;
    }

    public void setD(Date d) 
    {
        this.d = d;
    }

    public Date getD() 
    {
        return d;
    }

    public String getT() {
        return t;
    }

    public void setT(String t) {
        this.t = t;
    }

    public void setV(Long v)
    {
        this.v = v;
    }

    public Long getV() 
    {
        return v;
    }

    public void setP(BigDecimal p) 
    {
        this.p = p;
    }

    public BigDecimal getP() 
    {
        return p;
    }

    public void setTs(Integer ts) 
    {
        this.ts = ts;
    }

    public Integer getTs() 
    {
        return ts;
    }

    public void setCreatedAt(Date createdAt) 
    {
        this.createdAt = createdAt;
    }

    public Date getCreatedAt() 
    {
        return createdAt;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("code", getCode())
            .append("d", getD())
            .append("t", getT())
            .append("v", getV())
            .append("p", getP())
            .append("ts", getTs())
            .append("createdAt", getCreatedAt())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .append("createBy", getCreateBy())
            .toString();
    }
}
